Mass flow controller for improved performance across fluid types

ABSTRACT

Mass flow controllers and methods for improving the control of a flow of a variety of fluid types are described. The method includes selecting a process gas type for the process gas that will be controlled and obtaining molecular mass information for the selected processed gas type. General characterization data is obtained that includes, for each of a plurality of flow and pressure value pairs, a corresponding control signal value and operating characterization data is generated by modifying the flow values in the general characterization data based upon the molecular mass for the selected process gas type. The operating characterization data is then used to operate a valve of the mass flow controller in open loop control mode.

CLAIM OF PRIORITY UNDER 35 U.S.C. §120

The present application for patent is a Continuation of patentapplication Ser. No. 13/782,714 entitled “MASS FLOW CONTROLLER ANDMETHOD FOR IMPROVED PERFORMANCE ACROSS FLUID TYPES” filed Mar. 1, 2013,pending, and assigned to the assignee hereof and hereby expresslyincorporated by reference herein.

FIELD OF THE INVENTION

The present invention relates to control systems, and in particular, butnot by way of limitation, the present invention relates to systems andmethods for controlling a flow of a fluid.

BACKGROUND OF THE INVENTION

A typical mass flow controller (MFC) is a closed-loop device that sets,measures, and controls the flow of a gas in industrial processes such asthermal and dry etching among other processes. An important part of anMFC is a sensor that measures the mass flow rate of the gas flowingthrough the device. Typically, a closed-loop control system of the MFCcompares an output signal from the sensor with a predetermined set pointand adjusts a control valve to maintain the mass flow rate of the gas atthe predetermined set point.

A closed-loop control algorithm, if properly tuned, can be used toadjust a flow of a fluid in response to changes in fluid flow conditionsthat cause deviations away from a specified fluid flow set point.Changes in fluid flow conditions are often caused by variations in, forexample, pressure, temperature, etc. Deviations away from the specifiedfluid flow set point caused by these variations are detected andcorrected for based on measurements (e.g., feedback signal) generated bya sensing device (e.g., flow sensor measurements from a flow sensor)within a feedback loop of the closed-loop control algorithm.

When fluid flow conditions, however, change rapidly as a result of, forexample, rapid pressure changes, sensing devices used by the feedbackloop may saturate or produce unreliable feedback signals. If a flowcontroller, for example, uses these saturated and/or unreliable feedbacksignals within the closed-loop control algorithm, the flow controllermay not deliver the fluid according to the specified fluid flow setpoint. The flow controller may, for example, over-compensate orunder-compensate for changes in fluid flow conditions based on theunreliable feedback signals.

Another mode of operation where closed-loop systems do not perform wellis when the valve is relatively far from a required position. Forexample, when an MFC is at a zero set point (zero valve position), andthen is given a non-zero set point, it takes a relatively long time forthe valve to move from the zero position to a position where noticeableflow appears and the closed-loop algorithm starts working properly. Thisresults in a long response delay and poor performance of the MFC.

Open-loop systems have been utilized within MFCs to improve control overprocess gases when closed-loop systems do not perform well. In thesesystems, valve characterization data obtained in connection with acalibration gas (e.g., nitrogen) has been utilized to control theposition of a valve of the MFC in an open-loop mode of operation. Butthe valve characteristics for different process gases may be verydifferent than the calibration gas; thus if these typical MFCs arerunning a process that is different than the calibration gas theperformance of the MFC may degrade significantly.

Accordingly, a need exists for a method and/or apparatus to provide newand innovative features that address the shortfalls of presentclosed-loop and open-loop methodologies.

SUMMARY OF THE INVENTION

Exemplary embodiments of the present invention that are shown in thedrawings are summarized below. These and other embodiments are morefully described in the Detailed Description section. It is to beunderstood, however, that there is no intention to limit the inventionto the forms described in this Summary of the Invention or in theDetailed Description. One skilled in the art can recognize that thereare numerous modifications, equivalents and alternative constructionsthat fall within the spirit and scope of the invention as expressed inthe claims.

Aspects of the present invention can provide a method for controllingmass flow of a process gas with a mass flow controller that includesselecting a process gas type for the process gas that will becontrolled, obtaining molecular mass information for the selectedprocessed gas type, receiving a set point signal corresponding to adesired mass flow rate, and receiving a pressure measurement of theprocess gas generated by a pressure sensor. In addition, the methodincludes disengaging, responsive to a threshold condition, a feedbackcontrol loop that controls a valve of the mass flow controller basedupon a difference between a measured flow rate and the desired mass flowrate and determining a process control signal value for the desired flowvalue and pressure using a modified-flow-value that is based upon thedesired process gas flow value, the molecular masses of the selectedprocess gas type, and the calibration gas. The process control signal isthen applied to the valve at the process control signal value to providethe process gas at the desired flow rate.

Another aspect may be characterized as a mass flow controller thatincludes a valve that is adjustable to control a flow rate of a fluidresponsive to a control signal and a pressure transducer that provides apressure signal that indicates a pressure of the fluid. In addition, amemory stores general characterization data that characterizes the massflow controller in connection with a calibration gas and a mass flowsensor provides a measured flow rate of the fluid. A multi-gas controlcomponent generates an open-loop process control signal value for thedesired flow value and pressure using a modified-flow-value that isbased upon the desired process gas flow value and the molecular mass forthe selected process gas type. A multi-mode control component disengagesa feedback control loop when a threshold condition is satisfied andcontrols the valve using the open-loop process control signal.

BRIEF DESCRIPTION OF THE DRAWINGS

Various objects and advantages and a more complete understanding of thepresent invention are apparent and more readily appreciated by referenceto the following Detailed Description and to the appended claims whentaken in conjunction with the accompanying Drawings wherein

FIG. 1 is a block diagram that illustrates an exemplary mass flowcontroller that utilizes a multi-mode control approach and applies aprocess control signal based upon the type of process gas that iscontrolled.

FIG. 2 is a table that depicts exemplary general characterization data.

FIG. 3 is a flowchart depicting an exemplary method that may betraversed in connection with the embodiment depicted in FIG. 1.

FIG. 4 is a block diagram depicting another embodiment of a mass flowcontroller.

FIG. 5 is a flowchart depicting an exemplary method that may betraversed in connection with the embodiment shown in FIG. 4.

FIG. 6 is a block diagram depicting yet another embodiment of a massflow controller.

FIG. 7 is a graph depicting an exemplary series of events leading to anadjustment of the operating characterization data depicted in FIG. 6.

FIG. 8 is a block diagram depicting yet another embodiment of a massflow controller.

FIG. 9. shown is a flowchart that depicts a process that may betraversed by the mass flow controller depicted in FIG. 8 during runtime.

FIG. 10A is a graph depicting transient flow conditions relative to astarting control signal.

FIG. 10B is a graph depicting transient flow conditions relative toanother starting control signal.

FIG. 10C is a graph depicting transient flow conditions relative to yetanother starting control signal.

FIG. 11 is a graph depicting flow-versus-control-signal curves for fourdifferent temperatures.

FIG. 12 is a graph depicting a control-signal-versus-flow curve.

FIG. 13 is a graph depicting two control-signal-versus-flow curves forthe mass flow controller depicted in FIG. 8 at different temperatures.

FIG. 14 is a block diagram depicting physical components that may beutilized to realize the mass flow controllers depicted in FIGS. 1, 4, 6,and 8.

DETAILED DESCRIPTION

Referring now to the drawings, where like or similar elements aredesignated with identical reference numerals throughout the severalviews where appropriate, and referring in particular to FIG. 1, it is afunctional block diagram of an MFC 100 in accordance with anillustrative embodiment of the invention. As discussed in more detailfurther herein, aspects of the present invention include improvedcharacterization of the mass flow controller 100 for a variety of fluidtypes (e.g., gas types) and applications of the improvedcharacterization to improve performance of the MFC 100.

As depicted, in the present embodiment a base 105 of MFC 100 includes abypass 110 through which a gas flows. The bypass 110 directs a constantproportion of gas through a main path 115 and sensor tube 120. As aconsequence, the flow rate of the fluid through the sensor tube 120 isindicative of the flow rate of the fluid flowing through the main path115 of the MFC 100.

In several embodiments, the fluid controlled by the MFC 100 is a gas(e.g., nitrogen), but a person skilled in the art will appreciate,having the benefit of this disclosure, that the fluid being delivered bythe MFC 100 may be any kind of fluid including, for example, a mixtureof elements and/or compounds in any phase, such as a gas or a liquid.Depending upon the application, the MFC 100 may deliver a fluid in agaseous state (e.g., nitrogen) and/or a liquid state (e.g., hydrochloricacid) to, for example, a tool in a semiconductor facility. The MFC 100in many embodiments is configured to deliver a fluid under highpressure, low temperature, or to different types of containers orvessels.

The sensor tube 120 may be a small bore tube that is part of a thermalmass flow sensor 125 of the MFC 100. In general, the mass flow sensor125 provides an output signal 130 that is indicative of a mass flow rateof a fluid through the main path 115 of the MFC 100. As one of ordinaryskill in the art will appreciate, the mass flow sensor 125 may includesensing elements that are coupled to (e.g., wound around) the outside ofsensor tube 120. In one illustrative embodiment, the sensing elementsare resistance-thermometer elements (e.g., coils of conductive wire),but other types of sensors (e.g., resistance temperature detectors (RTDand thermocouples) may also be utilized. Moreover, other embodiments maycertainly utilize different numbers of sensors and differentarchitectures for processing the signals from the sensors withoutdeparting from the scope of the present invention.

One of ordinary skill in the art will also appreciate that the mass flowsensor 125 may also include a sensing-element circuit (e.g., a bridgecircuit) that provides an output, which is indicative of the flow ratethrough the sensor tube 120, and hence, indicative of the flow ratethrough the main path 115 of the MFC 100. And the output may beprocessed so the resultant output signal 130 is a digital representationof the mass flow rate of a fluid through the main flow path 115 of theMFC 100. For example, the mass flow sensor may include amplification andanalog to digital conversion components to generate the output signal130.

In alternative embodiments, the thermal mass flow sensor 125 may berealized by a laminar flow sensor, coriolis flow sensor, ultrasonic flowsensor or differential pressure sensor. Pressure measurements may beprovided by a gage pressure sensor, differential sensor, absolutepressure sensor or piezoresistive pressure sensor. In variations, themass flow sensor 125 and/or pressure measurements are used incombination with any combination of other sensors (e.g., temperaturesensors) to accurately measure the flow of the fluid. These combinationsare used, for example, in the feedback loop in the closed-loop mode orin the open-loop mode to control fluid flow and/or determine whether tochange the multi-mode control algorithm from one mode to another.

The control component 140 in this embodiment is generally configured togenerate a control signal 145 to control a position of the control valve150 based upon a set point signal 155. The control valve 140 may berealized by a piezo valve or solenoid valve, and the control signal 145may be a voltage (in the case of a piezo valve) or current (in the caseof a solenoid valve). And as one of ordinary skill in the art willappreciate, the MFC 100 may include pressure and temperature sensorsthat provide pressure and temperature inputs to the control component140. For example, the pressure sensor may be placed to sense pressure inthe main path upstream of the sensor tube 120 or downstream of thebypass 110.

In this embodiment, the control component 140 operates in both aclosed-loop mode and in open-loop mode to provide improved control overa variety of operating conditions (e.g., across pressure swings) inconnection with a variety of operating gases. More specifically, thecontrol component 140 in this embodiment includes a multi-mode controlcomponent 160 and a multi-gas control component 162. As one of ordinaryskill in the art, in view of this disclosure will appreciate, these andother components of the control component 140 may be realized by avariety of components including software (e.g., stored in tangible,non-volatile memory), hardware and/or firmware or combinations thereof,and the components may store and execute non-transitory processorreadable instructions that effectuate the methods described furtherherein.

In general, the multi-mode control component 160 operates to alternatethe operation of the mass flow controller 100 between a closed-loop modeand an open-loop mode depending upon conditions that affect the output130 of the mass flow sensor 125. In some instances, operating conditionsaffect the mass flow controller 100 to such an extent that the output130 of the mass flow sensor 125 cannot be reasonably be relied on, andas a consequence, the multi-mode control component 160 operates in anopen-loop mode.

More specifically, the multi-mode control component 160 is disposed toreceive indications of the fluid pressure from a pressure sensor 178,and the multi-mode control component 160 is configured to change fromthe closed-loop mode to the open-loop mode when a sudden pressure changeoccurs that causes the thermal flow sensor 125 to generate an output 130that is unreliable.

The multi-mode control component 160 changes from the closed-loop modeto the open-loop mode, for example, by disengaging the closed-loopcontrol algorithm and engaging the open-loop control algorithm. When thedisturbance(s) has subsided or after a defined period of time, themulti-mode control component 160 is configured to change from theopen-loop mode back to the closed-loop mode. In many implementations thepressure change threshold condition that triggers the open-loop controlmode is defined so that the multi-mode control component 160 changesfrom the closed-loop to the open-loop mode at or near the upper boundaryof the operating range of the flow sensor 125. In some embodiments, theflow controller 100 receives and uses an indicator from another deviceor sensor such as a temperature sensor (not shown) for determiningmulti-mode changes and/or to control the flow of the fluid.

In some embodiments, when changing from the open-loop mode to theclosed-loop mode, the mass flow controller 100 uses the fluid flow setpoint 155 and flow sensor measurements 130 in specified proportions asthe feedback signal for the closed-loop control to create a smoothtransition from the open-loop mode back to the closed-loop mode. Thistransition technique (also referred to as a “bumpless” transition) isappropriate when the fluid flow rate is not at, or substantially at, thefluid flow set point after operating for a period of time in theopen-loop mode. In some implementations, bumpless transitions techniquesare used to change the open-loop mode to the closed-loop mode and viceversa.

U.S. Pat. No. 7,640,078 entitled Multi-mode Control Algorithm, which isincorporated herein in its entirety by reference, discloses additionaldetails relative to multi-mode control of an MFC, which embodiments ofthe present disclosure enhance.

As discussed further herein, while operating in the open-loop mode ofcontrol, characterization data is utilized in connection with fluidpressure information to control a position of the control valve 150. Inthe depicted embodiment, the multi-gas control component 162 utilizesgeneral characterization data 164 in connection with gas-property data166 in the open loop mode to control the position of the control valve150.

The general characterization data 164, which may reside in nonvolatilememory, is utilized by the multi-mode control component 160 to control aposition of the control valve 140 during the open-loop mode to convertone or more pressure readings into a valve position that provides afluid flow rate that is sufficiently close, or equal, to the fluid flowlevel corresponding to the set point 155. In the embodiment depicted inFIG. 1, the characterization process to generate the generalcharacterization data 164 is performed as part of a manufacturingprocess (e.g., carried out by a manufacturer or supplier of the MFC 100)before the mass flow controller 100 is utilized in a processingenvironment.

More specifically, the general characterization data 164 is generatedusing a calibration gas (e.g., nitrogen), which is supplied to the massflow controller 100 at M different pressures P[1], P[2], . . . P(M). Foreach pressure, N flow set points are given to the device (F[1], F[2], .. . F[N]), and the valve control signal providing stable flow isrecorded. As depicted in FIG. 2, the resulting general characterizationdata 164 can be represented in a matrix V of size N*M, with valvecontrol signal components V[i,j], where i=1 . . . N, and j=1 . . . M.Vectors P, F, and matrix V are stored in a memory of the mass flowcontroller 100 and are used by the control component 140 during the openloop mode of MFC operation.

When valve characterization is performed with one calibration gas, thegeneral characterization data 164 provides acceptable performance of themass flow controller 100 only for this specific calibration gas.However, as one of ordinary skill in the art will appreciate in view ofthis disclosure, when the process gas (i.e., the gas that is controlledduring actual operation) is different than the calibration gas, thevalve control signal in the general characterization data 164corresponding to a desired flow set point (at the operating pressure)will not result in a valve position that provides the desired flow.

A solution that would provide very accurate multi-process-gascharacterization of the mass flow controller 100 would be to use actualprocess gases during the characterization process. But this type ofmulti-process-gas characterization is not viable for many reasons: manygases used in the industry are toxic and/or flammable, so these gasescannot be safely used by manufacturers; characterization for high-flowdevices requires a significant amount of a gas, and many gases are veryexpensive; and characterizing an MFC in connection with many gases isvery time-consuming process, and as a result, it is not economicallyviable.

As a consequence, the multi-gas control component 162 utilizes gasproperty data 166 in connection with the general characterization data164 to generate a valve control signal 145 that positions the controlvalve 150 so that the flow of any of a variety of process gases throughthe MFC 100 is the desired flow rate as indicated by the set point 155.

More specifically, Applicant has found that a ratio of process gas flowF_(pr) to calibration gas flow F_(cal) at the same pressure and valveposition can be approximately expressed as:

F _(pr) /F _(cal)=(M _(cal) /M _(pr))^(k)  Equation 1

where M_(cal) is a molecular mass of a calibration gas, M_(pr) is amolecular mass of a process gas, and k has a value between 0.2 . . .0.5, depending on the MFC flow range (bin).

As a consequence, to apply this discovered relationship, the gasproperty data 166 in several embodiments includes molecular mass datafor a plurality of gases. As shown, this data may be updated bycommunication link with external processing tools 170 that is coupled toan external gas property datastore 172. It is also contemplated that fora plurality of process gases, a plurality of molecular mass ratio values(equal to (M_(cal)/M_(pr))) may be stored in the gas property data.Regardless of the stored representation, several embodiments describedfurther herein utilize the relationship represented by Equation 1 tomore accurately control the flow of process gases using generalcharacterization data 164 that was obtained with a calibration gas.

While referring to FIG. 1, simultaneous reference is made to FIG. 3,which is a flowchart depicting an exemplary method that may be traversedin connection with the embodiment depicted in FIG. 1. As shown, duringoperation a process gas selection (shown by gas selection input 157 inFIG. 1) is made for a process gas that will be controlled (Block 300).Although not depicted in FIG. 1 for clarity, one of ordinary skill willappreciate that the mass flow controller may include user interfacecomponents (e.g., a display and buttons, touch pad, or a touchscreen) toenable an operator to select the process gas that will be controlled.Alternatively, the mass flow controller may be coupled to a controlnetwork via well-known wireline or wireless network technologies toenable a process gas to be selected from another control location (e.g.,using the external processing tools 170).

In addition, molecular mass information is obtained from the gasproperties data 166 (or the remote gas properties data 172) for theselected process gas type (Block 302), and a set point signal 155 isreceived that corresponds to a desired mass flow rate (Block 304). Forexample, the molecular mass information may include a molecular mass ofthe process gas M_(pr) (or another value indicative of M_(pr) or derivedfrom M_(pr)) or as another example, the molecular mass information mayinclude a molecular mass ratio value (equal to (M_(cal)/M_(pr))) oranother value indicative of, or derived from, the molecular mass ratiovalue. With respect to the desired mass flow rate (indicated by the setpoint signal 155), it may be a flow rate that is needed for a particularprocess in connection with a plasma-based (e.g., thin-film deposition)processing system.

As discussed above, a rapid rate of pressure change may render the flowsignal 130 unreliable, and as a consequence, the multi-mode controlcomponent 160 disengages a feedback control loop that controls the valve150, and a pressure reading is obtained (Block 306), which is utilizedto obtain a valve position value to control the control valve 150. Ifthe process gas being controlled happens to be the same type of gas thatwas used to generate the general characterization data 164, then thegeneral characterization data 164 may simply be accessed, using themeasured pressure value to obtain a valve position value for the valvecontrol signal 145. But frequently the process gas that is used duringactual use of the mass flow controller 100 is different than the gasthat is used to generate the general characterization data 164. As aconsequence, by virtue of the process gas having different flowproperties than the characterization gas, the valve position valueobtained from the general characterization data 164 would result in avalve position that provides a flow rate that is substantially differentthan the desired mass flow rate.

As a consequence, the exemplary mass flow controller 100 depicted inFIG. 1 utilizes the molecular relationship represented in Equation 1 togenerate a process control signal value that is specific to the processgas. More specifically, a process control signal value for the desiredflow value and pressure is determined using a modified-flow-value thatis equal to F_(pr)*(M_(pr)/M_(cal))^(k), where F_(pr) is the desiredprocess gas flow value, M_(pr) is the molecular mass for the selectedprocess gas type, and M_(cal) is a molecular mass for the calibrationgas (Block 308).

A more clear understanding of how the determination at Block 308 is madeis facilitated with reference again to the exemplary generalcharacterization data depicted in FIG. 2. It should be recognized thatthe exemplary general characterization data that is shown in FIG. 2 willvary from mass flow controller to mass flow controller.

Assuming that the desired flow value is 20% of the rated flow capacityof the mass flow controller 100, and the pressure reading obtained atBlock 306 is 30 units (e.g., pounds per square inch), the valve positionvalue of the valve control signal 145 for general-characterization gas(e.g., nitrogen) is 16.932. But as discussed above, when the process gasis different than the general-characterization gas, the 16.932 valveposition value will not provide the desired 20% flow rate.

Consistent with Equation 1, the modified-flow-value is calculated asF_(pr)*(M_(pr)/M_(cal))^(k), and assuming the term (M_(pr)/M_(cal))^(k)is equal to 2.0, then the modified-flow-value is (20%*2.0) or 40%, andas a consequence, at the pressure of 30, the process valve positionvalue is 21.015. Thus, the process valve position value (also referredto herein as the process control signal value) that provides 20% flowfor the hypothetical process gas in this example is 21.015. If eitherthe desired flow value or the modified flow values are not found in thegeneral characterization data 164, then interpolation may be used.

As shown in FIG. 3, the process control signal 145 is then applied tothe control valve 150 at the process control signal value to provide theprocess gas at the desired flow rate (Block 310). In many embodiments,after changes in pressure have reduced or a timer expires, themulti-mode control component 160 reverts back to a closed-loop mode ofoperation.

Referring next to FIG. 4, it is a functional block diagram of anexemplary embodiment of another MFC 400. As shown, this embodimentincludes many of the same components as the MFC 100 described withreference to FIG. 1, but unlike the MFC 100, in this embodiment, the MFC400 modifies the general characterization data 164 into operatingcharacterization data 480, which is utilized to control a position ofthe control valve 150 when the MFC 400 is operating in open-loop mode.

More specifically, a control component 440 of the MFC 400 includes acharacterization data modification component 474 that functions tomodify the general characterization data 164 to the operatingcharacterization data 480 based upon the gas selection input 157. Thecontrol component 440, and its constituent components may be realized bya variety of different types of mechanisms including software (e.g.,stored in non-volatile memory), hardware and/or firmware or combinationsthereof, and the components may store and execute non-transitoryprocessor readable instructions that effectuate methods describedfurther herein.

While referring to FIG. 4, for example, simultaneous reference is madeto FIG. 5, which is a flowchart depicting an exemplary method that maybe traversed in connection with the embodiment shown in FIG. 4. Asshown, in this embodiment, when a process gas type is selected for aprocess gas that will be controlled (Block 500), a molecular mass forthe selected process gas type is obtained from the gas properties data166 (or remote gas properties data 172)(Block 502), and generalcharacterization data 164 is also obtained by the characterization datamodification component 474 (Block 504).

As shown, in this embodiment the characterization data modificationcomponent 474 generates operating characterization data by modifying theflow values in the general characterization data according to theequation:

F _(adj) =F _(cal)*(M _(cal) /M _(pr))^(k)  Equation 2

wherein F_(adj) is an adjusted flow value F_(cal) is the calibrated flowvalue, M_(pr) is the molecular mass for the selected process gas type,and M_(cal) is a molecular mass for the calibration gas (Block 506).

The operating characterization data 480 is then used by the multi-modecontrol component 460 to operate the MFC 400 in the open-loop controlmode (Block 508).

As discussed above, the operating characterization data 480 providesimproved characterization of the mass flow controller 100 for a varietyof gas types, which is very advantageous when the MFC is operating in anopen-loop mode of operation as discussed above. But in addition, theoperating characterization data 480 also provides improved operationwith other control methodologies. For example, FIGS. 6-13 describeembodiments that benefit from the improved characterization that theoperating characterization data 480 provides.

For example, FIG. 6 is a functional block diagram of an exemplaryembodiment of yet another MFC 600 that utilizes the improvedcharacterization that the operating characterization data provides. Asshown, this embodiment includes many of the same components as the MFC100 described with reference to FIG. 1 and the MFC 400 described withreference 4, but unlike the MFCs 100, 400, in this embodiment anadaptive characterization component 676 is coupled to the operatingcharacterization data 480.

The adaptive characterization component 174 generally operates in thisembodiment to adjust the operating characterization data 480 duringoperation of the MFC 600 to accommodate, for example, any inaccuraciesin the application of Equation 1 and/or variances of operating pressuresduring operation. Thus, the operating characterization data 480 providesinitial characterization data for a variety of process gases, and theadaptive characterization component 676 further adjusts the operatingcharacterization data 480 during operation of the MFC 600 during theopen-loop mode of operation to reduce deficiencies (e.g., controlerrors) that may occur during operation (e.g., due to changes inpressure and any inaccuracies in the operating characterization data480).

In many implementations, to determine an appropriate adjustment, oncethe mass flow controller 600 is operating in the open-loop mode (e.g.,because a pressure deviation occurred), the adaptive characterizationcomponent 676 obtains a measured flow reading at the moment when theclosed-loop mode is being started again. And depending upon a flow errorand a direction of pressure change at the moment when the closed-loopmode is started again, the corresponding characterization value isincreased or decreased.

Referring to FIG. 7, it is a graph that includes the following threecurves that are utilized to illustrate an exemplary series of eventsleading to an adjustment of the operating characterization data 480 toprovide 100 percent flow when a process gas (instead of nitrogen) iscontrolled: an unadjusted valve position curve 702 for a process gas, a110 percent flow curve 704 for the process gas, and a desired valveposition curve 706 (to provide 100 percent flow) for the process gas.The unadjusted valve position curve 702 represents the position of thevalve 150 versus pressure when operating characterization data 480 (thatis unadjusted) is utilized to control the valve 150 during an open-loopmode of operation. The 110 percent flow curve 704 represents valvepositions versus pressure that would provide a 110 percent flow rate forthe process gas, and the desired valve position curve 706 representsvalve positions versus pressure that would provide the desired 100percent flow of the process gas.

As shown in this example, at point (V1, P1), the multi-mode controlcomponent 460 switches from a closed-loop mode of operation to anopen-loop mode of operation (e.g., because the rate at which thepressure was decreasing just before (V1, P1) exceeded a threshold). Andas shown, when the process gas is controlled using operatingcharacterization data 480 that is unadjusted, the valve position of thevalve 150 at pressure P2 is V2, which is the valve position thatprovides 110 percent flow when the process gas is controlled. Incontrast, to provide 100 percent flow for the process gas at pressureP2, the valve position needs to be at position V3.

As a consequence, in this example when the operating characterizationdata 480 is unadjusted, the flow rate is too high (i.e., because theposition of the valve is more open, at about 57 percent, when the valveposition should be about 54 percent open). In this example, at pressureP2, the multi-mode control component 660 switches back to theclosed-loop mode of operation and an adjustment to the operatingcharacterization data 460 is calculated based on a relation to adifference between a measured flow rate (corresponding to the actualvalve position V2) and a flow set point (corresponding to a desiredvalve position V3) so that the next time the multi-mode controlcomponent 660 switches to the open-loop mode of operation, the positionof the valve 150 more closely tracks the desired valve position curve706 than the unadjusted valve position curve 702.

The adaptive characterization component 676 may apply the adjustment tothe operating characterization data 480 by optionally changing existingvalve position values in the operating characterization data 480 (e.g.,by the optional communication from the adaptive characterizationcomponent 676 to the operating characterization data 480); by addingadditional data to the operating characterization data 480; or theoperating characterization data 480 may remain the same (e.g., as it wasgenerated as discussed wither reference to FIGS. 4 and 5) and theadaptive characterization component 676 applies a scaling factor to theoperating characterization data 480.

In implementations where the operating characterization data 480 remainsthe same and a scaling factor is applied, the scaling coefficient K, maybe calculated as follows: K=(V3−V1)/(V2−V1), but it is certainlycontemplated that other scaling factors may be used. And this scalar Kis used to adjust how the valve 150 is controlled by the operatingcharacterization data 480 in the open-loop mode. In. FIG. 7, forexample, K is approximately equal to (54%−61%)/(56%−61%) or 1.4. Thescalar 1.4 is indicative of how much more the valve 150 needs to move sothat after the open-loop mode of operation ends at pressure P2, theposition of the valve 140 is closer to (P2, V3). In this example,without adjustment, the operating characterization data 480 dictatesthat the valve 150 moves from about 61% (at V1) to 56% (at V2), (about5% difference) so the scalar 1.4 is multiplied by the 5% difference toobtain an adjusted difference of −7%.

As a consequence, when the open-loop mode is engaged again (under thesame changes in pressure), the position of the valve 150 at P2 when theopen-loop mode of operation ceases is (61% (at V1) minus 7%) or 54%. Toarrive at adjusted valve positions between P1 and P2 (so the valveposition more closely tracks the desired valve position curve 706), thevalue of the scaling factor K for each pressure value between P1 and P2may be calculated by interpolation.

Alternatively, instead of calculating a new coefficient as discussedabove, incremental adjustments can be made to the coefficient duringeach iteration in which the multi-mode control component 660 changesfrom the open-loop mode to the closed-loop mode. These incrementaladjustments can be made until a difference between a measured flow and aflow set point (at the moment when the multi-mode control component 660switches from the open-loop mode to the closed-loop mode) falls below athreshold.

In implementations where the operating characterization data 480 isaugmented or changed, the operating characterization data 480 may storeadjusted characterization data for each process gas. Or in othervariations, adjusted characterization data for a plurality of processgases may be uploaded (e.g., by communication links well known to thoseof skill in the art) to the external processing tools 185 and storedexternally from the MFC 600, and then the adjusted characterization datamay be retrieved when needed.

Additional details of adaptive characterization of calibration data fora calibration gas are found in U.S. patent application Ser. No.13/324,175 entitled Adaptive Pressure Insensitive Mass Flow Controllerand Method for Multi-Gas Applications, which is incorporated herein byreference in its entirety.

Referring next to FIG. 8, shown is a block diagram of another exemplaryMFC 800. As shown, this embodiment includes many of the same componentsas the MFC 100 described with reference to FIG. 1 and the MFC 400described with reference 4, but unlike the MFCs 100, 400, in thisembodiment an adaptive valve start component 882 is coupled to theoperating characterization data 880.

In general, the adaptive valve start component 882 operates to providean adjustable non-zero starting control signal 145 to the control valve150, based upon the operating characterization data 880 and runtime dataof the MFC 800, when the control valve 150 is closed, to more quicklyrespond to the set point signal 155. In addition, the user input to theadaptive valve start component 882 enables a user to alter theadjustable non-zero starting control signal 145 to adjust a response ofthe MFC 800. And the adaptive valve start component 882 generates theadjustment data 885, and uses the adjustment data 885 to adjust theadjustable non-zero starting control signal 145 to compensate for theeffects of temperature drift, aging, and other factors that affect theresponse of the MFC 800. Thus, the adaptive valve start component 882may be used to establish a desired transient response (e.g., based uponuser input) by setting a value of the adjustable non-zero startingcontrol signal 145, and then the adaptive valve start component 882adjusts the adjustable non-zero starting control signal 145 to maintainthe desired transient response when the environment and/or age affectsthe transient response.

In prior implementations, the closed-loop control loop of mass flowcontrollers performed relatively well when the valve 150 is relativelyclose to a required position and its movement changes the flow, so thatthe control loop sees flow response and immediately adjusts the valveposition accordingly. But in these prior systems, when the MFC was setto a zero position (zero valve position), and the MFC was given anon-zero set point, it would take a long time for the valve to move froma zero position to a position where a noticeable flow would appear andthe closed-loop control loop would start working properly. As aconsequence, there was a long response delay and generally poor MFCperformance.

Thus, to remove the response delays and poor performance, the adaptivevalve start component 882 improves the performance of the MFC 800 byimmediately moving the control signal 145 from a zero value (e.g., zerocurrent or voltage) to an adjustable non-zero starting control signalvalue while the control valve 150 is closed.

Referring next to FIG. 9, shown is a flowchart that depicts a processthat may be traversed by the MFC 800 during runtime. Although referenceis made to the MFC 800 described with reference to FIG. 8, it should berecognized that the process depicted in FIG. 9 is not limited to thespecific, exemplary embodiment in FIG. 8. As depicted, in operation,when the control valve 150 is closed, the set point signal 155 isreceived that has a value corresponding to a desired flow rate (Block902). In the context of plasma processing (e.g., thin film deposition),the flow rate may be the desired flow rate for a specific gas that isneeded as part of the plasma process.

As shown, the operating characterization data 880 is accessed to obtaina value of a characterized non-zero starting control signal and a valueof a characterized control signal at a particular flow rate, and thesevalues are used later to adjust the adjustable non-zero starting controlsignal (Block 904). The control signal 145 is then applied as anadjustable non-zero starting control signal at an initial value to thecontrol valve 150 (Block 906). As a consequence, the closed-loop controlsystem of the MFC 800 is engaged substantially sooner (when the flow isabout to start or has just started) as opposed to prior approaches wherethe starting control signal value is zero and the control loop is notengaged until after a delay during which the control signal slowlyreaches a level (using the control loop) where the flow begins.

When the MFC 800 is first deployed for use (e.g., when a user receivesthe MFC 800 from a supplier), the characterized non-zero startingcontrol signal may be used as the initial value of the adjustablenon-zero starting control signal, but once the MFC 800 is in use, theadjustable non-zero starting control signal is based upon the operatingcharacterization data 880 and run time data.

For example, in embodiments where the operating characterization data880 includes data for a plurality of pressures, the control signal 145is applied at Block 906 as an adjustable non-zero starting controlsignal at a value that is obtained by adding difference data (stored inthe adjustment data 885) to the calibrated non-zero starting controlsignal. The difference data in these embodiments is based upondifferences between the operating characterization data 880 and run timemeasurements that were previously obtained during one or more previousprocess runs. Additional information detailing an exemplary approach forgenerating the difference data is provided below with reference toBlocks 910 and 912 below.

And in the embodiments where the operating characterization data 880includes characterization data for only a single pressure, theadjustment data 885 includes the value of the adjustable non-zerostarting control signal, and the control signal 145 is applied at Block906 as an adjustable non-zero starting control signal at the valueobtained from the adjustment data 885. As discussed below with referenceto Blocks 910 and 912, the stored value of the adjustable non-zerostarting control signal may be adjusted during each run and updated inthe adjustment data 885.

Regardless of whether the operating characterization data 880 is basedupon a single pressure or multiple pressures, the value of the controlsignal (at a particular flow rate) that is obtained in Block 904 isutilized, as discussed further below, to adjust the adjustable non-zerostarting control signal during a subsequent run. Although two pieces ofdata are obtained in Block 904, it should be recognized that these twopieces of data need not be obtained co-currently.

In the implementations where the operating characterization data 880includes data for each of a plurality of pressure levels, a pressuretransducer in the MFC 800 may be used to obtain a signal that isindicative of a pressure of the fluid, and the operatingcharacterization data 880 may be accessed to select a value of acharacterized non-zero starting control signal that is based upon themeasured pressure.

But having characterization data for a plurality of pressures is notrequired in connection with the method depicted in FIG. 9, at least,because the method in FIG. 9 contemplates that valve/flowcharacteristics are not constant and may change and as a consequence,the adjustable non-zero starting control signal is adjusted to accountfor variances in operating conditions that affect valve/flowcharacteristics.

Although applying an adjustable non-zero starting control signal to theMFC 800 when the control valve 150 is closed will generally improve aresponse of the MFC 800, it is contemplated that users of the MFC 800will desire a particular transient response depending upon theparticular processing application in which the MFC 800 is used. As aconsequence, in many embodiments the adaptive valve start component 882enables a user to define (by way of the user input) a desired transientresponse of the MFC 800 by adding or subtracting an offset from theadjustable non-zero starting control signal.

Referring to FIGS. 10A-10C, for example, shown are graphs that depicttransient flow conditions relative to three corresponding startingcontrol signals. In FIG. 10A for example, shown is a starting controlsignal that has a value that produces a response that is slower than thestarting control signals in FIGS. 10B and 10C. In some applications, theslower response in FIG. 10A may be desirable, but in other applicationsthe response may be less than optimal as compared to the startingcontrol signal depicted in FIGS. 10B and 10C, which produce fasterresponse times. As a consequence, if the initial non-zero startingcontrol signal obtained from the operating characterization data 880produces the response depicted in FIG. 10A, a positive offset may beadded to the non-zero starting control signal to produce the transientresponse in FIG. 10B or a larger offset may be added to the non-zerostarting control signal to produce the transient response in FIG. 10C.

Similarly, if the non-zero starting control signal provides the responseshown in FIG. 10C, which results in a transient overshoot that may notbe acceptable during runtime processing, the user may add a negativeoffset to non-zero starting control signal to produce the response inFIG. 10B, or the user may add a larger negative offset to the non-zerostarting control signal to produce the slower response in FIG. 10A.

Although the adjustable non-zero starting control signal generallyimproves response, and may be configured to arrive at a desiredtransient response, environmental (e.g., temperature) and other factors(e.g., age of the MFC 800) affect the relationship between the transientresponse and the starting control signal. In other words, if a desiredtransient response is achieved (e.g., by adjustment with an offset thatis applied to the starting control signal), temperature and age willcause the MFC 800 to have a different response with the same startingcontrol signal.

Referring to FIG. 11, for example, shown are flow-versus-control-signalcurves for four different temperatures. If a calibrated valve start of30% were used and the valve/flow characteristic drifts with temperatureas shown in FIG. 11, the MFC 800 may produce overshoot at 30 degreesCelsius or a long response delay at 60 degrees Celsius if the processgas temperature during run time is different than the calibrationtemperature. In addition, there may also be long-term drift ofvalve/flow characteristics due to aging of valve materials, which alsoresults in performance degradation.

Most of the time, a temperature and/or aging-related change ofvalve-flow characteristics is practically a “parallel shift,” that maycharacterized by a curve that shifts left or right along a “controlsignal” axis while its shape stays substantially the same. Referring toFIG. 12 for example, shown is a calibrated control-signal-versus-flowcurve obtained at 40 degrees Celsius that may be represented as datapairs in the operating characterization data 880. As shown, thisexemplary collection of calibration data indicates that an optimalstarting control signal 180 is 30% (of the maximum control signallevel), and when the control signal 145 is at a value of 70% the flowrate is 60% (of the maximum flow level). When the MFC 800 is in use,however, the operating characteristics of the MFC 800 and/or theenvironment in which the MFC 800 is placed in may alter thecharacteristics of the MFC 800 so that to achieve the same particular60% flow rate, the measured control signal value needs to be 85% (of themaximum control signal level). Assuming the 15% shift in the controlsignal value is part of an overall “parallel” shift of the entirecontrol-signal-versus-flow curve, then a similar shift from 30% to 45%can be expected for the starting control signal.

As a consequence, as part of the adjustment to the adjustable non-zerostarting control signal, during operation, before the set point signal145 decreases, a measured value of the control signal is obtained at theparticular flow rate (Block 908). The particular flow rate at which themeasured flow rate is obtained is the same particular flow rate(discussed with reference to block 904) that was used in connection withobtaining the value of the calibrated control signal from the operatingcharacterization data 880 in block 904 above. And the measured value isobtained before the set point 155 decreases so that the measured valueis taken from an ascending control-signal-versus-flow curve (just as thecalibrated control signal at the particular flow rate was obtainedduring calibration).

Referring to FIG. 13 simultaneously with FIG. 8 for example, shown aretwo control-signal-versus-flow curves for the same MFC 800 at differenttemperatures. More specifically, the same control-signal-versus-flowcalibration curve depicted in FIG. 11 that was obtained at 40 degreesCelsius is shown, and in addition, another control-signal-versus-flowcurve that depicts actual operating characteristics during run time forthe MFC 100 at 50 degrees Celsius is depicted. If the set point 186 is60% flow for example, the measured value of the control signal may betaken at 60% flow on the ascending curve, which is 85%.

As shown in FIG. 9, the measured value of the control signal (85% in theexample depicted in FIG. 12) is compared with a level of a calibrationcontrol signal (70% in the example depicted in FIG. 12) at theparticular flow rate (e.g., 60%) that is stored on the mass flowcontroller (Block 910). And based upon the comparison, the value of theadjustable non-zero starting control signal is adjusted to an adjustedvalue so that a next time the mass flow controller receives, when thevalve is closed, another set point signal, the adjusted value is used(Block 912).

In many embodiments, the value of the adjustable non-zero startingcontrol signal is adjusted based upon the following algorithm:ASCS=CSCS+MVCS−CVCS where ASCS is the adjustable non-zero startingcontrol signal that is adjusted to maintain a desired response; CSCS isthe calibrated starting control signal, which is the value of thestarting control signal taken from the calibration data; MVCS is themeasured value of the control signal that is measured at a particularflow level; and CVCS is the calibrated value of the control signal,which is the value of the calibrated control signal at the particularflow value.

With reference to FIG. 12 for example, the CSCS is 30% and theparticular flow value is 60% so that MVCS is 85% and CVCS is 70%. As aconsequence, ASCS for the next run is 45%. It should be recognized thatthe particular flow value that is selected may be any flow value thatexists in both the characterization curve and the run time curve.

In embodiments where the operating characterization data 880 includesdata for a plurality of pressures, the difference between the measuredvalue of the control signal (MVCS) and the characterized value of thecontrol signal (CVCS) is stored in the adjustment data 885 so thatduring a subsequent run, the stored difference is added to the value ofthe characterized non-zero starting control signal that is stored in theoperating characterization data 880 (for the current pressure) to obtainthe adjustable non-zero starting control signal (ASCS). And the methoddescribed above with reference to Blocks 908 to 912 is carried out againto adjust the difference data as needed for yet other subsequent processruns.

And in the embodiments where the operating characterization data 880includes characterization data for only a single pressure, theadjustment data 185 includes the value of the adjustable non-zerostarting control signal (ASCS), which is accessed during a subsequentprocess run (the same way the initial value of a characterized non-zerostarting control signal is accessed as described with reference to Block904), and applied to the control valve 150 as the adjustable non-zerostarting control signal as discussed above with reference to Block 906.And the method described above with reference to Blocks 908 to 912 iscarried out again to adjust the adjustable non-zero starting controlsignal as needed.

In variations of the method depicted in FIG. 9, the adjustment of theadjustable non-zero control signal can be done slowly, using estimationsfrom many runs, with some predefined adjustment limit per run, forexample 1% of valve voltage. It can also be filtered (integrated), toavoid effects of noisy valve measurements, especially at low set points.In addition, it is contemplated that large jumps of the adjustablenon-zero starting control signal could indicate problems with thedevice; thus an alarm/warning may be triggered in response to anadjustable non-zero starting control signal jump exceeding a threshold.

Although the method described with reference to FIG. 9 adjusts theadjustable non-zero starting control signal responsive to changes intemperature, to further improve the ability of the adaptive valve startcomponent 882 to adjust the value of the control signal 145 when thecontrol valve 150 is starting from a closed position, temperature datamay be gathered and used during runtime to improve aspects of theprocess depicted in FIG. 9.

For example, when a new adjustable non-zero starting control signalvalue (or difference data) is stored in the adjustment data 885, atemperature value from a temperature sensor in the MFC 800 may also bestored so that temperature information is stored in connection with thestarting control signal value or difference data. The stored temperaturedata (in connection with the control signal or difference data) can beused to predict the optimal adjustable non-zero starting control signalvalue for subsequent process runs instantaneously if the temperature ofthe gas has changed significantly between the process runs.

Additional details of adaptive valve start systems and methodologies(outside of the context of the operating characterization data describedherein) are found within U.S. patent application Ser. No. 13/206,022entitled Mass Flow Controller Algorithm with Adaptive Valve StartPosition, which is incorporated herein by reference.

It should be recognized that the adaptive characterization component676, and the adaptive valve start component 882 are separately depictedin FIGS. 6 and 8 for ease of description, but these components may beimplemented together in a single mass flow controller with one of themulti-mode control components 160, 460 described with reference to FIGS.1 and 4.

Referring next to FIG. 14, shown is a block diagram 1400 depictingphysical components that may be utilized to realize the MFCs 100, 400,600, 800 described with reference to FIGS. 1, 4, 6, and 8. As shown, adisplay portion 1412, and nonvolatile memory 1420 are coupled to a bus1422 that is also coupled to random access memory (“RAM”) 1424, aprocessing portion (which includes N processing components) 1426, avalve driver component 1428 that is in communication with a solenoid orpiezo type valve 1430, and an interface component 1432. Although thecomponents depicted in FIG. 14 represent physical components, FIG. 14 isnot intended to be a hardware diagram; thus many of the componentsdepicted in FIG. 14 may be realized by common constructs or distributedamong additional physical components. Moreover, it is certainlycontemplated that other existing and yet-to-be developed physicalcomponents and architectures may be utilized to implement the functionalcomponents described with reference to FIG. 14.

This display portion 1412 generally operates to provide a presentationof content to a user, and in several implementations, the display isrealized by an LCD or OLED display. In general, the nonvolatile memory1420 functions to store (e.g., persistently store) data andnon-transitory processor-executable code including code that isassociated with the control components 140, 440, 640, 840. In addition,the nonvolatile memory 1420 may include bootloader code, software,operating system code, and file system code.

In many implementations, the nonvolatile memory 1420 is realized byflash memory (e.g., NAND or ONENAND™ memory), but it is certainlycontemplated that other memory types may be utilized as well. Althoughit may be possible to execute the code from the nonvolatile memory 1420,the executable code in the nonvolatile memory 1420 is typically loadedinto RAM 1424 and executed by one or more of the N processing componentsin the processing portion 1426. As shown, the processing component 1426may receive analog temperature and pressure inputs that are utilized bythe functions carried out by the control component 140, 440, 640, 840.

The N processing components in connection with RAM 1424 generallyoperate to execute the non-transitory processor-readable instructionsstored in nonvolatile memory 1420 to effectuate the functionalcomponents depicted in FIGS. 1, 4, 6, and 8. For example, the controlcomponent 140, 440, 640, 840 may be realized by one or more of the Nprocessing components in connection with non-transitoryprocessor-readable code that is executed from RAM 1424 to carry out themethods described with reference to FIGS. 3, 5, and 9.

The interface component 1432 generally represents one or more componentsthat enable a user to interact with the MFC 100, 400, 600, 800. Theinterface component 1432, for example, may include a keypad, touchscreen, and one or more analog or digital controls, and the interfacecomponent 1432 may be used to translate an input from a user into theset point signal 155. And the communication component 1434 generallyenables the MFC 100, 400, 600, 800 to communicate with external networksand devices including the external processing tools 170. One of ordinaryskill in the art will appreciate that the communication component 1434may include components (e.g., that are integrated or distributed) toenable a variety of wireless (e.g., WiFi) and wired (e.g., Ethernet)communications.

The mass flow sensor 1436 depicted in FIG. 14 represents a collection ofcomponents known to those of ordinary skill in the art to realize themass flow sensor 125 shown in FIG. 1. For example, these components mayinclude sensing elements, amplifiers, analog-to-digital conversioncomponents, and filters.

Those of skill in the art will appreciate that the information andsignals discussed herein may be represented using any of a variety ofdifferent technologies and techniques. For example, data, instructions,commands, and information, that may be referenced throughout the abovedescription may be represented by voltages, currents, electromagneticwaves, magnetic fields or particles, optical fields or particles, or anycombination thereof.

Those of skill will also appreciate that the various illustrativelogical blocks, modules, circuits, and algorithm steps described inconnection with the embodiments disclosed herein may be implemented byother alternative components than those depicted in FIG. 14. To clearlyillustrate this interchangeability of hardware and software, variousillustrative components, blocks, modules, circuits, and steps have beendescribed above generally in terms of their functionality. Whether suchfunctionality is implemented as hardware, firmware or software dependsupon the particular application and design constraints imposed on theoverall system. Skilled artisans may implement the describedfunctionality in varying ways for each particular application, but suchimplementation decisions should not be interpreted as causing adeparture from the scope of the present invention.

More specifically, the various illustrative logical blocks, components,and circuits described in connection with the embodiments disclosedherein may be implemented or performed with a general purpose processor,a digital signal processor (DSP), an application specific integratedcircuit (ASIC), a field programmable gate array (FPGA) or otherprogrammable logic device, discrete gate or transistor logic, discretehardware components, or any combination thereof designed to perform thefunctions described herein. A general purpose processor may be amicroprocessor, but in the alternative, the processor may be anyconventional processor, controller, microcontroller, or state machine. Aprocessor may also be implemented as a combination of computing devices,e.g., a combination of a DSP and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration.

The steps of a method or algorithm described in connection with theembodiments disclosed herein may be embodied directly in hardware, in asoftware module executed by a processor (e.g., as shown in FIG. 14), orin a combination of the two. A software module may reside innon-transitory processor readable mediums such as the RAM memory 1424,non-volatile memory 1420, ROM memory, EPROM memory, EEPROM memory,registers, hard disk, a removable disk, a CD-ROM, or any other form ofstorage medium known in the art. An exemplary storage medium is coupledto the processor such the processor can read information from, and writeinformation to, the storage medium. In the alternative, the storagemedium may be integral to the processor. The processor and the storagemedium may reside in an ASIC.

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

What is claimed is:
 1. A mass flow controller comprising: a valve thatis adjustable to control a flow rate of a fluid responsive to a controlsignal; a pressure transducer that provides a pressure signal thatindicates a pressure of the fluid; a memory to store generalcharacterization data that characterizes the mass flow controller inconnection with a calibration gas; a mass flow sensor that provides ameasured flow rate of the fluid; a multi-gas control component thatgenerates an open-loop process control signal value for the desired flowvalue and pressure using a modified-flow-value that is based upon thedesired process gas flow value, a molecular mass for the selectedprocess gas type, and a molecular mass for the calibration gas; and amulti-mode control component that disengages a feedback control loopwhen a threshold condition is satisfied and controls the valve using theopen-loop process control signal.